package io.renren.common.utils;

import com.eagle.vo.tbl_ZFKExitWaste;



public class OperType {
	/**参与方ID规则  对于跨省数据接口前 4 字节为 99999999 第 5 个字节标识国家清分结算中心或省级参与方 ID 01、11 
	 * 第 6 个字节为参与方类型：01 为发行方，02 为清分方，03 为公路收费方，04 为收费代理方
	 * 第 7、8 字节为机构序号，从 1 开始
	 */
	/**青海省iD*/
	public static String qh="22";
	/**发行方iD*/
	public static String issuerid="99999999"+qh+"010001";
	/**清分方iD*/
	public static String clearid="99999999"+qh+"020001";
	/**收费方iD*/
	public static String serverid="99999999"+qh+"030001";
	
	/**1--- 正常 用户名单状态*/
	public static int userStatus=1;
	/**2--- 挂失 用户名单状态*/
	public static int userStatus_loss=2;
	/**3--- 低值(不在使用) 用户名单状态*/
	public static int userStatus_low=3;
	/**4--- 透支 用户名单状态*/
	public static int userStatus_tz=4;
	/**5--- 禁用 用户名单状态*/
	public static int userStatus_unable=5;
	/**6--- 拆卸电子标签 用户名单状态*/
	public static int userStatus_disassemble=6;
	/**10--- 无卡注销 用户名单状态*/
	public static int userStatus_cancel=10;
	
	/**1--- 应收 交易状态*/
	public static int transactionStatus=1;
	/**2--- 确认应收 */
	public static int transactionStatus_confirm=2;
	/**4--- 待决应收*/
	public static int transactionStatus_unconfirm=4;
	/**5--- 争议拒付*/
	public static int transactionStatus_refuse=5;
	/**6--- 争议付款*/
	public static int transactionStatus_payment=6;
	/**12--- 确认应收退费*/
	public static int transactionStatus_refund=12;
	/**16--- 争议退费*/
	public static int transactionStatus_unrefund=16;
	
	/**0--- 蓝色 车牌颜色*/
	public static int color=0;
	/**1--- 黄色 车牌颜色*/
	public static int color_yellow=1;
	/**2--- 黑色 车牌颜色*/
	public static int color_black=2;
	/**3--- 白色 车牌颜色*/
	public static int color_white=3;
	
	/**0---自主发行 发行代理ID */
	public static int agentid=0;
	/**11---邮储 发行代理ID */
	public static int agentid_yc=11;
	/**12---中国银行 发行代理ID */
	public static int agentid_bc=12;
	/**13---工商 发行代理ID */
	public static int agentid_icbc=13;
	/**14---农行 发行代理ID */
	public static int agentid_abc=14;
	/**15---建行 发行代理ID */
	public static int agentid_cbc=15;
	/**16---华夏 发行代理ID */
	public static int agentid_hxb=16;
	/**17---平安 发行代理ID */
	public static int agentid_pa=17;
	/**18---交行 发行代理ID */
	public static int agentid_bcm=18;
	/**19---光大 发行代理ID */
	public static int agentid_ceb=19;
	/**20---民生 发行代理ID */
	public static int agentid_cmbc=20;
	/**21---中信 发行代理ID */
	public static int agentid_ccb=21;
	/**22---招商 发行代理ID */
	public static int agentid_cmb=22;
	/**23---上海浦东 发行代理ID */
	public static int agentid_spdb=23;
	/**24---深圳发展 发行代理ID */
	public static int agentid_sdb=24;
	/**25---兴业 发行代理ID */
	public static int agentid_cib=25;
	/**26---广东发展 发行代理ID */
	public static int agentid_gdb=26;
	
	public static String  filePath="D:/GBBlackCardDic/";
	/**字符串转16进制*/
	public static String toHexString(String s) {  
        String str = "";  
        for (int i = 0; i < s.length(); i++) {  
            int ch = (int) s.charAt(i);  
            String s4 = Integer.toHexString(ch);  
            str = str + s4;  
        }  
        return "0x" + str;//0x表示十六进制  
    }
	/**
	 * 长度不足 前补0
	 * @param args
	 * @author 郑鲁业
	 */
	public static String compStr(String str,int length){
		if (str!=null && str.getBytes().length<length) {
			for(int i=str.getBytes().length; i <length; i++){ 
				str= "0"+str; 
				} 
			return str;
		}else if (str==null) {
			str="";
			for(int i=str.getBytes().length; i <length; i++){ 
				str= "0"+str; 
				} 
			return str;
		}
		else {
			return str;
		}
	}
	
	/**拼接发送加密机报文*/
	public static String getSendMsg(tbl_ZFKExitWaste  is_info){
		String money=null;
		if (is_info.getOperType()==0) {
			money=(long)(is_info.getStoreMoney()*100)+"";
		}else{
			money=(long)(is_info.getStoreMoney()*100)+"";
		}
		String str="300001010401"+is_info.getPayCardID2()+"0004001E0000000000000000"+compStr(Integer.toHexString(Integer.valueOf(money)),8)+
		compStr((String.valueOf(is_info.getTransType())),2)+compStr(is_info.getTerminalId(),12)+compStr(Integer.toHexString(Integer.valueOf(is_info.getPayCardTranSN())),8)+
		DateUtil.formatDateTime1(is_info.getExitTime());
		return str;
	}
	public static void main(String[] args) throws Exception{
		//System.out.println(toHexString("29223"));
		System.out.println();
	}
}
